1. Field of the Invention
The present invention relates to a a system for configuring shared storage and a shared storage duplicating system for use with a multiprocessor system in which processor modules and shared storage modules are connected by a system bus.
2. Description of the Related Art
A shared storage device of a multiprocessor system stores instructions and data necessary for processing by multiple processor modules. These processor modules frequently access the shared storage device. If the frequency of access to the shared storage device is high, the number of processor modules which can be built into the system will be limited and consequently, the system's performance will be limited. Furthermore, abnormality in one processor module is apt to be directly linked to abnormality within the whole system. Thus, a shared storage configuration system is desired which permits efficient access to the shared storage device and decreases access frequency.
Specifically, a shared storage for a fault tolerant system requires duplication. However, as the duplex configuration of the shared storage is fixed by hardware, flexible control is not allowed in duplicating the configuration. Besides, in accessing a duplex memory, the software monitors the access as a duplex access, thus being subject to a large process load caused by a duplex write. Therefore, an improved duplicating method is in great demand which allows a change in a duplex configuration and a reduction in load on software during the duplex access.
A conventional multiprocessor system comprises a plurality of processor modules and a plurality of shared storage modules which are connected by a system bus for transfer of information, thereby forming a computer system.
In such a multiprocessor system, instructions and data necessary to a central processing unit of each processor module are stored in the shared storage modules. Hence, each processor module forms a TCMP (Tightly Coupled Multiprocessor) system which frequently accesses the shared storage modules.
In addition, a shared storage duplicating method is indispensable for realizing a fault tolerant multi-processor system capable of continuous operation even when a fault occurs in a part of the system being operated.
A duplex configuration of a conventional shared storage is determined by the hardware, and an abnormal condition in one of the duplex storages is corrected immediately by a duplicating write where the same data are written, according to a write instruction of a processor based on the software, into a pair of shared storage modules specified as a duplex.
With the TCMP system in which each processor module frequently accesses the shared storage modules, however, there is a limit to the information transfer capability per unit time of the system bus. Thus, if the number of accesses increases, the number of processor modules which can be built into the system will be limited to a considerably small number. Consequently, system performance will also be limited.
In implementing a fault-tolerant computer system which is able to continue functioning without going down even when a fault occurs in part of the system, problems which arise with the conventional system, if an abnormality occurs in one processor module due to an access error, the system bus will be released after a delay with overhead occurring in the other processors due to the extremely frequent access to the shared storage module, which may cause an abnormality of the whole system to occur.
Moreover, in the conventional system, the memory area accessible by the central processing unit of a processor module is limited by the physical addresses of the central processing unit, and thus the area outside the physical address capacity cannot be used as a memory space area. Therefore, it has been extremely difficult to build a computer system that requires vast memory space, for example, one for processing a large-scale data base.
However, shared storage duplication in a fault-tolerant system does not require duplication of all memory areas, but performs duplication only of specific memory areas as required.
However, in the duplicating method in the prior art technology, the duplex configuration of a shared storage is fixed and determined by the hardware. Therefore, if the size of the memory areas to be used during the duplicating process fluctuates during system operation, the system must be stopped so that the duplex configuration can be changed by the hardware. This causes a problem in that the duplex configuration cannot be determined flexibly.
In the duplicating method of the prior art technology, software recognizes a duplex access on accessing a duplex memory and monitors the state of the access until data are written twice in the duplex shared storage. Thus, the load on the software becomes large and system efficiency is reduced.